home *** CD-ROM | disk | FTP | other *** search
/ PC Answers 2003 September / PC Answers September 2003.iso / Software / trial / MonitorIT 5.2.06 / monitorit_fullsetup.exe / data1.cab / Rpm / AdministerDataBase.asp < prev    next >
Encoding:
Text File  |  2003-06-24  |  26.1 KB  |  730 lines

  1. <html>
  2. <head>
  3. <title>Database Maintenance</title>
  4. <link rel="stylesheet" type="text/css" href="css/rpmstyle.css">
  5.  
  6. <style>
  7. .GTabBox {  height : 460; width : 540; border: none; background-color : activeborder }
  8. </style>
  9.  
  10.  
  11. <script LANGUAGE="JAVASCRIPT" SRC="js/Calendar.js" PURPOSE="COMPONENT" CLASSNAME="com.netobjects.Calendar"></script>
  12. <script LANGUAGE="JavaScript" src="js/MiscFunc.js"></script>
  13. <script LANGUAGE="JavaScript" src="js/CalendarTimeFunc.js"></script>
  14.  
  15.  
  16. </head>
  17.  
  18. <body class="bodyc" language="JavaScript" RPMHostIP="!BreakoutBot:MonitorIP!" RPMHostPort="!BreakoutBot:MonitorPort!" RPMUserName="!BreakoutBot:UserName!" BOBDone="!BreakoutBot:Done!" onload="top.banner.savePageCoord(event,document.body,'AdminDataBase'); InitRpmCC_AD();" onbeforeunload="DiscoRpmCC_AD()" onresize="processSizeChange()" onclick="checkClick()" onkeydown="processBSP()">
  19.  
  20. <script LANGUAGE="JavaScript">
  21. <!--
  22. var     ReconnectEvent = false;
  23. var     Hp = 82;
  24. var    Tid = null;
  25. var   CTid = null;
  26. var    CompactDB_IP = false;
  27.  
  28.  
  29. // Capture and ignore script errors
  30.     window.onerror = wwScrErr;
  31. function wwScrErr() {
  32.     return true;
  33. }
  34.  
  35. /* On Load tell the Comm control to Connect to the Server */
  36. function InitRpmCC_AD() {
  37.     top.MainLoaded = true; // Flag that Main is now loaded
  38.     Calendar7 = Calendar_init("Calendar7",true);
  39.     /* Connect to Server */
  40.     Hp = parseInt( document.body.RPMHostPort,10);
  41.     RpmCC_AD.Connect(document.body.RPMHostIP,Hp, "");
  42.     processSizeChange();
  43.     Es_StopDate.CalObj = Calendar7;
  44.     initCalendarTime(); // go initialize Calendar and Time fields
  45.     for ( var i=0; i<12; i++ ) {
  46.         stxt = (i == 0) ? "12 AM " : i+" AM ";        
  47.         el = addElementToSelect(AL_RAT,stxt);
  48.         el.value = i;
  49.         if ( i == 1 ) {
  50.            el.selected = "selected";
  51.         }
  52.     }
  53.     for ( var i=0; i<12; i++ ) {
  54.         stxt = (i == 0) ? "12 PM " : i+" PM ";        
  55.         el = addElementToSelect(AL_RAT,stxt);
  56.         el.value = i + 12;
  57.     }
  58.     for ( var i=1; i<61; i++ ) {
  59.         stxt = ""+i+" ";
  60.         el = addElementToSelect(AL_DOT,stxt);
  61.         el.value = i;
  62.         if ( i == 14 ) {
  63.            el.selected = "selected";
  64.         }
  65.     }
  66.     for ( var i=0; i<24; i++ ) {
  67.         stxt = ""+(65+(i*5))+" ";
  68.         el = addElementToSelect(AL_DOT,stxt);
  69.         el.value = 65 + (i*5);
  70.     }
  71. }
  72. function processReconnect() {
  73.     Tid = null;
  74.     if ( RpmCC_AD.IsConnected() ) {
  75.         Tid = setTimeout("processConnectionCheck()",30000); // Delay 30 secs then check connection
  76.         return;
  77.     }
  78.     RpmCC_AD.Connect(document.body.RPMHostIP,Hp, ""); 
  79. }
  80. function processConnectConfirmed() {
  81.     // Restore Filter and Computer Store    
  82.     if ( ReconnectEvent == false ) {
  83.         if ( RpmCC_AD.GetAutoPurge() ) {
  84.              top.Rstatus.Pstat("Unable to initiate read for current AutoPurge parameters",true);
  85.          }
  86.         if ( RpmCC_AD.GetObjectFilter() ) {
  87.              top.Rstatus.Pstat("Unable to initiate read for current ObjectFilter parameters",true);
  88.          }
  89.         ReconnectEvent = true;
  90.     }
  91.     top.Rstatus.Pstat("Connected");
  92.     if ( Tid != null ) {
  93.         clearTimeout(Tid); // stop timeout routine
  94.     }
  95.     Tid = setTimeout("processConnectionCheck()",30000); // Delay 30 secs then check connection
  96. }
  97. function processConnectionCheck() {
  98.     Tid = null;
  99.     RpmCC_AD.SendKeepAlive("Check");
  100.     Tid = setTimeout("processConnectionCheck()",30000); // Delay 30 secs then check connection
  101. }
  102.  
  103. /* On Unload tell the Comm control to Disconnect from the Server */
  104. function DiscoRpmCC_AD() {
  105.     RpmCC_AD.Disconnect(); // Disconnect from Server
  106.     top.banner.processStopCommX();
  107.     if ( Tid != null ) {
  108.         clearTimeout(Tid); // stop timeout routine
  109.     }
  110.     if ( CTid != null ) {
  111.         clearTimeout(CTid); // stop timeout routine
  112.     }
  113. }
  114.  
  115. // Process Export and Import of 'Admin' Table Data
  116. function processImport() {
  117.     // If DB Import Update Required,  Wiat Until Complete
  118.     if ( confirm("Are you sure you want to Import saved 'Admin' data now?\n -Press OK to continue with import of the saved 'Admin' data\n -Press Cancel to ignore") ) {
  119.         top.main.cleardoc();
  120.         top.main.ActionPane.window.location.href = "AdministerDataImport.asp";
  121.         top.document.title = "MonitorIT Process 'Admin' Data Import";  
  122.     }
  123. }
  124.  
  125. function processExport() {
  126.     // If DB Import Update Required,  Wiat Until Complete
  127.     if ( confirm("Are you sure you want to Export 'Admin' data to a file now?\n -Press OK to continue with export of the 'Admin' data\n -Press Cancel to ignore") ) {
  128.         top.main.cleardoc();
  129.         top.main.ActionPane.window.location.href = "AdministerDataExport.asp";
  130.         top.document.title = "MonitorIT Process 'Admin' Data Export";  
  131.     }
  132. }
  133.  
  134. // Initialize the Calendar and Time fields
  135. function initCalendarTime() {
  136.     getTodayDate();
  137.     processCalendarClick(Es_StopDate); 
  138.     Es_StopDate.value = " " + dowArray[baseDow] + "  " + (baseMonth+1) + "/" + ( (baseDay < 10 ) ? "0"+baseDay : baseDay) + "/" + baseYear;
  139.     //Es_StopDate.className = "idis";
  140.     CreatTimeDropDowns("Es");
  141.     CH = (cHrs > 12) ? cHrs-12 : cHrs;
  142.     CH = (CH == 0) ? 12 : CH;
  143.       Es_TimHrs.options[--CH].selected = "selected";
  144.       Es_TimMins.options[cMins].selected = "selected";
  145.       cM = (cHrs > 11 && cHrs < 24) ? 1 : 0;
  146.       Es_M.options[cM].selected = "selected";
  147.       // Create default selTime based on today at 12AM
  148.     var dOb = new Date(baseYear,baseMonth,baseDay); // today at 12:00AM
  149.     selTime = dOb.getTime(); // determine msecs since 1/1/70
  150. }
  151.  
  152. // Process Apply button press
  153. function processApplyClick() {
  154.     var DtArr = new Array;
  155.     cHrs = Es_TimHrs.selectedIndex+1; // get selected option
  156.    cHrs = (cHrs == 12) ? 0 : cHrs; // Hr between 0 and 11
  157.     cMins = Es_TimMins.selectedIndex;
  158.     cSecs = 0;
  159.     if ( (i = Es_M.selectedIndex) == 1) //PM selected
  160.         cHrs += 12; // adjust hours
  161.     if ( selTime+(cHrs*60*60*1000)+(cMins*60*1000) > baseTime ) {
  162.         top.Rstatus.Pstat("Please select a time earlier than current time",true);
  163.         alert("Please select a time earlier than current time");
  164.         return;
  165.     }
  166.     DtArr = Es_StopDate.value.split(" ");
  167.     Edt = DtArr[3] + " ";
  168.     Edt += cHrs + ":" + cMins + ":" + cSecs;
  169.     
  170.     if ( !confirm("Are you sure you want to delete database monitored data older than " + Edt + "?") ) {
  171.         return; //ignore if no
  172.     }
  173.     
  174.  
  175.     RsApplyBut.disabled = "disabled"; // disable Apply button
  176.     //RsApplyBut.className = "BoxButtonD"; 
  177.     AlarmClock.src="Animations/AniAlarmClock.gif";
  178.     top.banner.processStartComm(); 
  179.     SetCursor("wait");
  180.     top.Rstatus.Pstat("One moment while Database records are flagged for deletion; this may take a few minutes!");
  181.     Tid = setTimeout("DoFlagValues()",500); // Delay 500 ms. then flag records
  182. }
  183. var PurgeInProgress = false;
  184. function DoFlagValues() {
  185.     Tid = null; // reset if set
  186.     PurgeInProgress = true;
  187.     RpmCC_AD.OpenMessageFloodgate(); // Track Purge Progress
  188.     if ( RpmCC_AD.DatabaseValuesDeleteOlderThan(Edt) ) {
  189.         PurgeInProgress = false;
  190.         AlarmClock.src="Images/AlarmClock.gif";
  191.         top.banner.processStopCommX();
  192.         top.Rstatus.Pstat("Unable to flag Database records for deletion",true);
  193.     }
  194. }
  195.  
  196. // Process Purge button press
  197. function processPurgeClick() {
  198.     if ( !confirm("Are you sure you want to Compact the database now?\n -Compact closes the database and a large database may take up to 1 hour to complete!\n\n -Compact only applies to the default Access database\n -Use SQL Server tools to Compact the SQL Server database\n\nPress 'OK' to Compact; Press 'Cancel' to ignore") ) {
  199.         return; //ignore if no
  200.     }
  201.     RsPurgeBut.disabled="disabled"; // disable Purge button
  202.     //RsPurgeBut.className="BoxButtonD"; 
  203.     TrashCan.src="Animations/AniTrash.gif";
  204.     SetCursor("wait");
  205.     top.Rstatus.Pstat("One moment while the Database compact completes");
  206.     top.banner.processStartComm(); 
  207.     Tid = setTimeout("DoPurge()",500); // Delay 500 ms. then purge
  208. }
  209. function DoPurge() {
  210.     CTid = null; // reset if set
  211.     if ( RpmCC_AD.DatabaseCompact() ) {
  212.         top.Rstatus.Pstat("Unable to start the Database compact",true);
  213.         top.banner.processStopCommX();
  214.         processCompactReset();
  215.     }
  216.     else { // Delay before starting to look for reconnect and get status
  217.         CompactDB_IP = true;
  218.         CTid = setTimeout("WaitCompactComplete()",5000); // Delay 5 secs. 
  219.     }
  220. }
  221. function WaitCompactComplete() {
  222.     CTid = null; // reset if set
  223.     if ( !RpmCC_AD.IsConnected() ) {
  224.         var Hp = parseInt( document.body.RPMHostPort,10);
  225.         RpmCC_AD.Connect(document.body.RPMHostIP,Hp, "");
  226.         CTid = setTimeout("WaitCompactComplete()",5000); // Delay 5 secs.
  227.     }
  228.     else {
  229.         CompactDB_IP = false;
  230.         RpmCC_AD.GetLastCompactionResult();
  231.     }
  232. }
  233. function processCompactResult(Cstat) {
  234.     top.Rstatus.Pstat("Compact Database result: "+Cstat,true);
  235.     processCompactReset();
  236. }
  237.  
  238. function processCompactOpError() {
  239.     top.Rstatus.Pstat("Compact Database encountered an error",true);
  240.     processCompactReset();
  241. }
  242. function processCompactReset() {
  243.     RsPurgeBut.disabled=""; // enable Purge button
  244.     //RsPurgeBut.className="BoxButton"; 
  245.     TrashCan.src="Images/Trash.gif";
  246.     SetCursor("auto");
  247.     top.banner.processStopCommX();
  248. }
  249.  
  250. // Process Op Complete or Error on Set Purge Data/Time
  251. function processDelValsOpComplete() {
  252.     top.Rstatus.Pstat("Record deletion successful. ",true);
  253.     PurgeInProgress = false;
  254.     SetCursor("auto");
  255.     AlarmClock.src="Images/AlarmClock.gif";
  256.     top.banner.processStopCommX();
  257.     //alert("Database records successfully flagged as deleted.\n -Use Access or SQL Server tools to compact the database\n and reclaim the freed space.");
  258. }
  259. function processDelValsOpError() {
  260.     top.Rstatus.Pstat("Unable to flag Database records for deletion",true);
  261.     PurgeInProgress = false;
  262.     SetCursor("auto");
  263.     AlarmClock.src="Images/AlarmClock.gif";
  264.     top.banner.processStopCommX();
  265. }
  266.  
  267.  
  268. // Enable the Apply button
  269. function checkEnableSchedButton() {
  270.     top.Rstatus.Pstat("");
  271.     RsApplyBut.disabled = ""; // enable Apply button
  272.     //RsApplyBut.className = "BoxButton"; 
  273. }
  274. function EnableApplyButton() {
  275.     top.Rstatus.Pstat("");
  276.     AutoApplyBut.disabled = ""; // enable Apply button
  277.     //AutoApplyBut.className = "BoxButton"; 
  278. }
  279.  
  280. function EnableObjectApplyButton() {
  281.     top.Rstatus.Pstat("");
  282.     ObjApplyBut.disabled = ""; // enable Apply button
  283.     //ObjApplyBut.className = "BoxButton"; 
  284. }
  285.  
  286. // Set initial button state for all buttons 
  287. function initButtonState() {
  288. }
  289.  
  290. function processSizeChange() {
  291.     //PopUpContext Menu
  292.     bCw = document.body.clientWidth;
  293.    PopUpContextSize(bCw);
  294. }
  295.  
  296. function PopUpContextOpen() {
  297.     Es_TimHrs.style.visibility = "hidden";
  298.     Es_TimMins.style.visibility = "hidden";
  299.     Es_M.style.visibility = "hidden";
  300.     AL_RAT.style.visibility = "hidden";
  301.     AL_DOT.style.visibility = "hidden";
  302. }
  303. function PopUpContextClose() {
  304.     Es_TimHrs.style.visibility = "visible";
  305.     Es_TimMins.style.visibility = "visible";
  306.     Es_M.style.visibility = "visible";
  307.     AL_RAT.style.visibility = "visible";
  308.     AL_DOT.style.visibility = "visible";
  309. }
  310.  
  311. /* Process Click on selected Tab */
  312. var CurSelTab = null; // current selected tab
  313. function processGeneralClick(th) {
  314.     PurgeUI.style.display="none";
  315.     AutoUI.style.display="none";
  316.     ExImUI.style.display="none";
  317.     ObjectsUI.style.display="none";
  318.     PurgeTab.className="TabUnsel";
  319.     AutoTab.className="TabUnsel";
  320.     ExImTab.className="TabUnsel";
  321.     ObjectsTab.className="TabUnsel";
  322.     th.className="TabSel";
  323.  
  324.     CurSelTab = th.id;
  325.     switch ( th.id ) {
  326.    case "PurgeTab" : 
  327.      PurgeUI.style.display=""; // Enable this Tab's view
  328.       break;
  329.    case "AutoTab" : 
  330.        AutoUI.style.display=""; // Enable this Tab's view
  331.       break;
  332.    case "ExImTab" : 
  333.       ExImUI.style.display=""; // Enable this Tab's view
  334.       break;
  335.    case "ObjectsTab" : 
  336.       ObjectsUI.style.display=""; // Enable this Tab's view
  337.       break;
  338.     }
  339. }
  340. function processAutoApplyClick() {
  341.     var EAP = (AL_EAP.checked) ? "1" : "0";
  342.     var DOT = AL_DOT.options[AL_DOT.selectedIndex].value;
  343.     var RAT = AL_RAT.options[AL_RAT.selectedIndex].value;
  344.     var RATtxt = AL_RAT.options[AL_RAT.selectedIndex].text;
  345.     var ucon = false;
  346.     if ( EAP == "0" ) {
  347.          if ( confirm("Are you sure you want to disable the automatic Database Purge?\n\n Press OK to proceed with disable.\n Press CANCEL to ignore.") ) {    
  348.              ucon = true;
  349.          }
  350.      }
  351.      else {
  352.         if ( confirm("Are you sure you want to enable the automatic Database Purge?\n-Run Purge everyday at "+RATtxt+"?\n-Discard monitored data older than "+DOT+" days?\n\n Press OK to continue.\n Press CANCEL to ignore.") ) {    
  353.              ucon = true;
  354.          }
  355.      }
  356.      if ( ucon == true ) {
  357.         if ( RpmCC_AD.SetAutoPurge(EAP+"~"+DOT+"~1~"+RAT) ) {
  358.             top.Rstatus.Pstat("Unable to set the AutoPurge parameters",true);
  359.             alert("Unable to set the AutoPurge parameters");
  360.         }
  361.     }
  362.     else {
  363.         RpmCC_AD.GetAutoPurge();
  364.     }
  365.     AutoApplyBut.disabled = "disabled"; // disable Apply button
  366.     //AutoApplyBut.className = "BoxButtonD"; 
  367. }
  368. function processEABClick() {
  369.     if (AL_EAP.checked) {
  370.         AL_DOT.className = "";
  371.         AL_DOT.disabled = "";
  372.         AL_RAT.className = "";
  373.         AL_RAT.disabled = "";
  374.     }
  375.     else {    
  376.         AL_DOT.className = "idis";
  377.         AL_DOT.disabled = "disabled";
  378.         AL_RAT.className = "idis";
  379.         AL_RAT.disabled = "disabled";
  380.     }
  381. }
  382.  
  383. function processOFEClick() {
  384.     if (AL_OFE.checked) {
  385.         AL_ObjFilter.className = "";
  386.         AL_ObjFilter.disabled = "";
  387.     }
  388.     else {    
  389.         AL_ObjFilter.className = "idis";
  390.         AL_ObjFilter.disabled = "disabled";
  391.     }
  392. }
  393. function processObjFilter() {
  394.     if ( !chkDisabled(AL_ObjFilter) ) {
  395.         ObjApplyBut.disabled = ""; // enable Apply button
  396.         //ObjApplyBut.className = "BoxButton"; 
  397.     }
  398. }
  399.  
  400. function processObjectApplyClick() {
  401.     var OFE = (AL_OFE.checked) ? "1" : "0";
  402.     var ucon = false;
  403.     if ( OFE == "0" ) {
  404.          if ( confirm("Are you sure you want to disable the Object Filtering?\n\n Press OK to proceed with disable.\n Press CANCEL to ignore.") ) {    
  405.              ucon = true;
  406.          }
  407.      }
  408.      else {
  409.          var OFL = "Are you sure you want to enable the Object Filtering using the following list:\n";
  410.          var warr = new Array();
  411.          var ts;
  412.          warr = AL_ObjFilter.value.split(";");
  413.          for ( var i=0; i<warr.length; i++ ) {
  414.              ts = TrimLeadingSpaces(warr[i]);
  415.              if ( ts == "" ) {
  416.                  continue;
  417.              }
  418.              OFL += " - " + ts + "\n";   
  419.         }
  420.         OFL += "\n Press OK to continue.\n Press CANCEL to ignore."
  421.         if ( confirm(OFL) ) {    
  422.              ucon = true;
  423.          }
  424.      }
  425.      if ( ucon == true ) {
  426.         if ( RpmCC_AD.SetObjectFilter(OFE+"~"+AL_ObjFilter.value) ) {
  427.             top.Rstatus.Pstat("Unable to set the ObjectFilter parameters",true);
  428.             alert("Unable to set the ObjectFilter parameters");
  429.         }
  430.         else {
  431.             top.Rstatus.Pstat("ObjectFilter Set",true);
  432.             if ( OFE == "0" ) {
  433.                 alert("ObjectFiltering is now Disabled!");
  434.             }
  435.             else {
  436.                 alert("ObjectFilter Set! Filter process scheduled to start shortly as a background task.\n\nYou can view the progress via the MonitorIT Server Log display");
  437.             }
  438.         }        
  439.     }
  440.     else {
  441.         RpmCC_AD.GetObjectFilter();
  442.     }
  443.     ObjApplyBut.disabled = "disabled"; // disable Apply button
  444.     //ObjApplyBut.className = "BoxButtonD"; 
  445. }
  446. function addElementToSelect(SelectObj,text) {
  447.     var el = document.createElement("OPTION");
  448.     el.text = text;
  449.     SelectObj.options.add(el);
  450.     return el;
  451. }
  452.  
  453. function TrimLeadingSpaces(Ostrg) {
  454.     for ( var i=0; i<Ostrg.length; i++ ) {
  455.         if ( Ostrg.charAt(i) != " " ) 
  456.             break;
  457.     }
  458.     if ( i > 0 ) 
  459.         Ostrg = Ostrg.substr(i);
  460.     return Ostrg;
  461. }
  462.  
  463. //-->
  464. </script>
  465.     
  466. <script LANGUAGE="JavaScript" FOR="RpmCC_AD" EVENT="Connected()">
  467. <!--
  468. processConnectConfirmed();
  469. //-->
  470. </script> 
  471. <script LANGUAGE="JavaScript" FOR="RpmCC_AD" EVENT="Disconnected()">
  472. <!--
  473. top.Rstatus.Pstat("Disconnected",true);
  474. if ( Tid != null ) {
  475.     clearTimeout(Tid); // stop timeout routine
  476. }
  477. Tid = setTimeout("processReconnect()",10000); // Delay 10 secs then try reconnnect
  478. //-->
  479. </script>
  480.  
  481. <script LANGUAGE="JavaScript" FOR="RpmCC_AD" EVENT="ReceiveText(nLength, szText)">
  482. <!--
  483. if ( PurgeInProgress ) {
  484.     if ( szText.indexOf("ServicesLog Records") > 0 )
  485.         top.Rstatus.Pstat( szText );
  486.     else if ( szText.indexOf("Value Records") > 0 ) 
  487.         top.Rstatus.Pstat( szText );
  488. }
  489.  
  490. //-->
  491. </script>
  492.  
  493. <script LANGUAGE="JavaScript" FOR="RpmCC_AD" EVENT="GetAutoPurge(aps)">
  494. <!--
  495. var warr = new Array();
  496. warr = aps.split("~");
  497. AL_EAP.checked = (warr[0] == "1") ? "checked" : "";
  498. var DOTv = parseInt(warr[1],10);
  499. var RATv = parseInt(warr[3],10);
  500. AL_DOT.selectedIndex = (DOTv < 61) ? DOTv-1 : 60 + ((DOTv-65)/5);
  501. AL_RAT.selectedIndex = (RATv);
  502. processEABClick()
  503. //-->
  504. </script> 
  505.  
  506. <script LANGUAGE="JavaScript" FOR="RpmCC_AD" EVENT="GetObjectFilter(aps)">
  507. <!--
  508. var warr = new Array();
  509. warr = aps.split("~");
  510. AL_OFE.checked = (warr[0] == "1") ? "checked" : "";
  511. AL_ObjFilter.value = warr[1];
  512. processOFEClick()
  513. //-->
  514. </script> 
  515.  
  516. <script LANGUAGE="JavaScript" FOR="RpmCC_AD" EVENT="LastCompactionResult(CS)">
  517. <!--
  518. processCompactResult(CS);
  519. //-->
  520. </script> 
  521.  
  522. <script LANGUAGE="JavaScript" FOR="RpmCC_AD" EVENT="CompactDbOpComplete()">
  523. <!--
  524. //processCompactOpComplete();
  525. //-->
  526. </script> 
  527.  
  528. <script LANGUAGE="JavaScript" FOR="RpmCC_AD" EVENT="CompactDbOpError()">
  529. <!--
  530. processCompactOpError();
  531. //-->
  532. </script> 
  533.  
  534. <script LANGUAGE="JavaScript" FOR="RpmCC_AD" EVENT="DelValsDbOpComplete()">
  535. <!--
  536. processDelValsOpComplete();
  537. //-->
  538. </script> 
  539.  
  540. <script LANGUAGE="JavaScript" FOR="RpmCC_AD" EVENT="DelValsDbOpError()">
  541. <!--
  542. processDelValsOpError();
  543. //-->
  544. </script> 
  545.  
  546. <script LANGUAGE="JavaScript" src="js/PopUpMenuFunc.js"></script>
  547.  
  548. <object ID="RpmCC_AD" NAME="RpmCC_AD" WIDTH="14" HEIGHT="1" style="display:none"
  549. CLASSID="CLSID:D88C2358-FC83-11D1-BF49-00104B2D6F80" CODEBASE="controls/RPMComm.cab#version=5,2,0,0">
  550.   <param name="_Version" value="65536">
  551.   <param name="_ExtentX" value="2646">
  552.   <param name="_ExtentY" value="1341">
  553.   <param name="_StockProps" value="0">
  554. </object>
  555.  
  556. <center>
  557. <div class="GTabBox" border="0" align="center">
  558.  
  559. <div align="left"><table border="1"  borderColor="activeborder" align="left">
  560.     <tr><td borderColorDark="graytext" borderColorLight="white" style="font-weight:800; font-size:12pt; background-color:threedhighlight; color:windowtext"> <img src="images/sDatabaseMaintenance.gif" align="absmiddle" height="16" width="16"> Database Maintenance </td></tr>
  561. </table>
  562. </div>
  563.  <BR CLEAR=ALL><HR width="534" align="center">
  564.  
  565.  
  566. <table class="fldset" border="0" width="530" cellspacing="0" cellpadding="0" height="430">
  567.  <tr>
  568.  <td height="420" align="center">
  569.  
  570.    <div id="GTab" style="width:510px" >
  571.     <table border="0" cellspacing="0" cellpadding="0">
  572.         <tr>
  573.         <td valign="center" id="PurgeTab"  class="TabSel" onclick="processGeneralClick(this)">Purge</td>
  574.         <td valign="center" id="AutoTab"  class="TabUnsel" onclick="processGeneralClick(this)">AutoPurge</td>
  575.         <td valign="center" id="ExImTab"  class="TabUnsel" onclick="processGeneralClick(this)">Export/Import</td>
  576.         <td valign="center" id="ObjectsTab"  class="TabUnsel" onclick="processGeneralClick(this)">Objects</td>
  577.         <td style="height:30px; width:186px; border-bottom: solid thin white" align="right" > </td>
  578.       </tr>
  579.     </table>
  580.    </div>
  581.  
  582.   <div id="PurgeUI" class="Lbr_border" style="width:510px; height:386px; border-left:solid thin white; border-bottom:solid thin graytext; border-right:solid thin graytext" SelDate="" >
  583.  
  584. <table border="0" cellpadding="0" cellspacing="0" height="265" width="500">
  585.   <tr><td colspan="2" height="10px"></td></tr>
  586.   <tr height="35" width="500">
  587.     <td align="right" width="90"><img id="AlarmClock" src="Images/AlarmClock.gif" width="32" height="35" alt="Discard Counter Data Older Than" align="absmiddle" border="0"></td>
  588.     <td class="inputlabel" align="left" width="*">    Discard monitored data records older than this Date/Time: </td>
  589.   </tr>
  590.   
  591.     <tr height="30" width="500">
  592.       <td colspan="2" align="center" >
  593.          <div id="Es_Sdt" width="490">
  594.             <input TYPE="text" SIZE="19" style="font-weight: 500" NAME="Es_StopDate" onClick="this.blur(); processCalendarClick(this)" CalObj="" calendar="Es_calwin"> <B>/</B> 
  595.             <select SIZE="1" NAME="Es_TimHrs" onchange="checkEnableSchedButton()"></select>
  596.             <Big><B ID="Es_TempColon" >:</B></Big>
  597.          <select SIZE="1" NAME="Es_TimMins" onchange="checkEnableSchedButton()"></select>
  598.          <select SIZE="1" NAME="Es_M" onchange="checkEnableSchedButton()"></select>
  599.       </div>
  600.      </td>
  601.    </tr>
  602.    
  603.     <tr height="200" width="500">
  604.         <td colspan="2" align="center"><div width="490" class="CalendarTextBox" Name="Es_calwin" ID="Es_calwin" CalState="0" ></div>
  605.         </td>
  606.    </tr>
  607.  </table>
  608. </center>
  609.  
  610. <table border="0" width="500" align="center" cellspacing="0" cellpadding="0" >
  611.       <tr width="500">
  612.         <td colspan="2" align="center"><button id="RsApplyBut" onclick='processApplyClick()' style="width:80px; height:28px" style="font-family:arial; font-size : 8pt; font-weight : 600; cursor:hand" disabled><img src="images/apply.gif" align="absmiddle" height="16" width="16">Start</button></td>
  613.       </tr>
  614. </table>
  615.  
  616. <table border="0" width="500" align="center" cellpadding="0" cellspacing="0">
  617.   <tr>
  618.     <td valign="top"><img id="TrashCan" src="Images/Trash.gif" width="32" height="32" alt="Compact Database" align="absmiddle" border="0"></td>
  619.     <td>
  620.       <div align="left">
  621.       <table border="0" cellpadding="0" cellspacing="0">
  622.        <tr>
  623.         <td rowspan="2"><img src="Animations/AniCaution.gif" width="18" height="18" alt="Caution" align="absmiddle" border="0"></td>
  624.         <td class="inputlabel">Compact may impact current users as the database will be temporarily closed.</td>
  625.        </tr>
  626.      </table>
  627.     </div></td>
  628.   </tr>
  629.   <tr>
  630.    <td colspan="2" align="center"><button id="RsPurgeBut" onclick='processPurgeClick()' style="width:110px; height:28px" style="font-family:arial; font-size : 8pt; font-weight : 600; cursor:hand"><img src="images/compactnow.gif" align="absmiddle" height="16" width="16">Compact Now</button></td>
  631.    </tr>
  632.    <tr><td height="10"> </td></tr>
  633. </table>
  634.  
  635.  </div>
  636.  
  637.  
  638.  
  639. <div id="AutoUI" class="Lbr_border" style="display:none; width:510px; height:386px; border-left:solid thin white; border-bottom:solid thin graytext; border-right:solid thin graytext" SelDate="" >
  640.  
  641. <table border="0" cellpadding="0" cellspacing="0" height="230" width="500">
  642.   <tr><td colspan="2" height="40px"></td></tr>
  643.   <tr width="500">
  644.     <td align="right" width="100"></td>
  645.     <td class="inputlabel" align="left" width="*"><input TYPE="checkbox" onclick="processEABClick();EnableApplyButton()" id="AL_EAP" >  Enable AutoPurge</td>
  646.   </tr>
  647.   <tr width="500">
  648.     <td align="center" width="100"><img src="Images/Trash.gif" width="32" height="32" alt="Compact Database" align="absmiddle" border="0"></td>
  649.     <td class="inputlabel" align="left" width="*">Discard monitored data older than: <select id="AL_DOT" onchange="EnableApplyButton()"></select>  Days</td>
  650.   </tr>
  651.   <tr width="500">
  652.     <td align="center" width="100"><img src="Images/AlarmClock.gif" width="32" height="35" alt="Discard Counter Data Older Than" align="absmiddle" border="0"></td>
  653.     <td class="inputlabel" align="left" width="*">Run AutoPurge <!--& Compact -->everyday at:  <select id="AL_RAT" onchange="EnableApplyButton()"></select></td>
  654.   </tr>
  655.   
  656.   <tr width="500">
  657.     <td colspan="2" align="center"><button id="AutoApplyBut" onclick='processAutoApplyClick()' style="width:80px; height:28px" style="font-family:arial; font-size : 8pt; font-weight : 600; cursor:hand" disabled><img src="images/apply.gif" align="absmiddle" height="16" width="16">Apply</button></td>
  658.     </tr>
  659. </table>
  660.  
  661. </div>
  662.  
  663.  
  664.  
  665. <div id="ExImUI" class="Lbr_border" style="display:none; width:510px; height:386px; border-left:solid thin white; border-bottom:solid thin graytext; border-right:solid thin graytext" SelDate="" >
  666.  
  667. <table border="0" cellpadding="0" cellspacing="0" width="500">
  668.   <tr><td colspan="3" height="60px"></td></tr>
  669.   <tr>
  670.     <td align="right" width="150"><img src="images/DataSave.gif" align="absmiddle" height="25" width="24"></td>
  671.     <td colspan="2" class="inputlabel" align="left" width="*">    Export 'Admin' Data Before Updating: </td>
  672.   </tr>
  673.   
  674.     <tr>
  675.     <td align="right" width="150"></td>
  676.     <td align="center" width="205"><button id="ExportButton" title="Export 'Admin' Data from the Database to a File for later Import" onclick='processExport()' style="width:150px; height:28px" style="font-family:arial; font-size : 8pt; font-weight : 600; cursor:hand"><img src="images/DataSave.gif" align="absmiddle" height="17" width="16"> Export 'Admin' Data</button></td>
  677.     <td align="left" width="145"></td>
  678.     </tr>
  679.    <tr><td colspan="3" height="60px"></td></tr>
  680.    
  681.   <tr>
  682.     <td align="right" width="150"><img src="images/DataSave.gif" align="absmiddle" height="25" width="24"></td>
  683.     <td colspan="2" class="inputlabel" align="left" width="*">    Import 'Admin' Data After Updating: </td>
  684.   </tr>
  685.   
  686.     <tr>
  687.     <td align="right" width="150"></td>
  688.     <td align="center" width="205"><button id="ImportButton" title="Import 'Admin' Data from the file where it was previously saved by an Export" onclick='processImport()' style="width:150px; height:28px" style="font-family:arial; font-size : 8pt; font-weight : 600; cursor:hand"><img src="images/DataSave.gif" align="absmiddle" height="17" width="16"> Import 'Admin' Data</button></td>
  689.     <td align="left" width="145"></td>
  690.     </tr>
  691. </table>
  692.  
  693. </div>
  694.  
  695.  
  696. <div id="ObjectsUI" class="Lbr_border" style="display:none; width:510px; height:386px; border-left:solid thin white; border-bottom:solid thin graytext; border-right:solid thin graytext" SelDate="" >
  697.  
  698. <table border="0" cellpadding="0" cellspacing="0" height="150" width="500">
  699.   <tr><td colspan="2" height="40px"></td></tr>
  700.   <tr width="500">
  701.     <td align="right" width="110"></td>
  702.     <td class="inputlabel" align="left" width="*"><input TYPE="checkbox" onclick="processOFEClick();EnableObjectApplyButton()" id="AL_OFE" >  Enable Object Filtering</td>
  703.   </tr>
  704.   <tr width="500">
  705.     <td class="inputlabel" align="right" width="110">Object Filter List: </td>
  706.     <td class="inputlabel" align="left" width="*"><input TYPE="text" SIZE="70" NAME="AL_ObjFilter" maxLength="256"  onkeydown="processKeyDown();" onclick="processObjFilter()" onFocus="chkDisabled(this)" class="idis" disabled></td>
  707.   </tr>
  708.  
  709.   <tr width="500">
  710.     <td colspan="2" align="center"><button id="ObjApplyBut" onclick='processObjectApplyClick()' style="width:80px; height:28px" style="font-family:arial; font-size : 8pt; font-weight : 600; cursor:hand" disabled><img src="images/apply.gif" align="absmiddle" height="16" width="16">Apply</button></td>
  711.     </tr>
  712. </table>
  713.  
  714. </div>
  715.  
  716.  
  717. </td>
  718. </tr>
  719. </table>
  720.  
  721.  
  722.  
  723.  
  724. </center>
  725.  
  726. </body>
  727. </html>
  728.  
  729.  
  730.